package com.service.system.service.impl;

import com.service.common.core.domain.entity.StudentInfo;
import com.service.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.service.system.mapper.StudentInfoMapper;
import com.service.system.service.IStudentInfoService;

import java.util.List;

/**
 * 学生信息Service业务层处理
 *
 * @author service
 * @date 2024-05-01
 */
@Service
public class StudentInfoServiceImpl implements IStudentInfoService
{
    @Autowired
    private StudentInfoMapper studentInfoMapper;

    /**
     * 查询学生信息
     *
     * @param stuId 学生信息主键
     * @return 学生信息
     */
    @Override
    public StudentInfo selectStudentInfoByStuId(Long stuId)
    {
        return studentInfoMapper.selectStudentInfoByStuId(stuId);
    }

    /**
     * 查询学生信息列表
     *
     * @param studentInfo 学生信息
     * @return 学生信息
     */
    @Override
    public List<StudentInfo> selectStudentInfoList(StudentInfo studentInfo)
    {
        return studentInfoMapper.selectStudentInfoList(studentInfo);
    }

    /**
     * 新增学生信息
     *
     * @param studentInfo 学生信息
     * @return 结果
     */
    @Override
    public int insertStudentInfo(StudentInfo studentInfo)
    {
        studentInfo.setCreateTime(DateUtils.getNowDate());
        return studentInfoMapper.insertStudentInfo(studentInfo);
    }

    /**
     * 修改学生信息
     *
     * @param studentInfo 学生信息
     * @return 结果
     */
    @Override
    public int updateStudentInfo(StudentInfo studentInfo)
    {
        studentInfo.setUpdateTime(DateUtils.getNowDate());
        return studentInfoMapper.updateStudentInfo(studentInfo);
    }

    /**
     * 批量删除学生信息
     *
     * @param stuIds 需要删除的学生信息主键
     * @return 结果
     */
    @Override
    public int deleteStudentInfoByStuIds(Long[] stuIds)
    {
        return studentInfoMapper.deleteStudentInfoByStuIds(stuIds);
    }

    /**
     * 删除学生信息信息
     *
     * @param stuId 学生信息主键
     * @return 结果
     */
    @Override
    public int deleteStudentInfoByStuId(Long stuId)
    {
        return studentInfoMapper.deleteStudentInfoByStuId(stuId);
    }
}
